// 字符串操作相关内容
#include <string.h>
#include <stdio.h>

int main()
{
    //str***

    // 拼接字符串
    {
        char str1[256] = "abc";
        char str2[] = "def";
        strcat(str1, str2);
        printf("%s\n", str1); // abcdef
    }

    {
        char str1[] = "abc";
        char str2[] = "abd";
        int r = strcmp(str1, str2);

        // 0 代表相等
        // > 0 代表第一个字符串比第二个字符串大
        // < 0 代表第一个字符串比第二个字符串小
        //  值就是从左往右第一个不相同的字符的差
        printf("%d\n", r); // -1
    }

    {
        // 寻找第一个字符
        char str1[] = "123a456a789a";
        char *s = strchr(str1, 'a');
        printf("1: %s\n", s);
        s = strchr(s+1, 'a');
        printf("2: %s\n", s);
        s = strchr(s+1, 'a');
        printf("3: %s\n", s);
    }

    {
        // 字符串拷贝
        char str1[256];
        char msg[] = "hello world!";
        char *s = strcpy(str1, msg);// 返回值是第一个参数
        printf("[%p:%p]: %s\n",str1, s, str1);
    }



    return 0;
}